---
id: 5900f4bd1000cf542c50ffcf
title: 'Завдання 336: впорядкування максімікс'
challengeType: 1
forumTopicId: 301994
dashedName: problem-336-maximix-arrangements
---

# --description--

До локомотива причіпляють чотири вагони в порядку $ABCD$. Однак іноді, коли локомотив прибуває по вагони, вони стоять у неправильному порядку.

Щоб змінити порядок вагонів, їх ставлять на велику платформу, яка обертається. Після того, як вагони відчіпляються у певній точці, локомотив покидає платформу разом з приєднаними вагонами. Вагони, що залишилися, розвертаються на 180°. Потім всі вагони знову причіпляються, а сам процес повторюється стільки разів, скільки потрібно (важливо використовувати платформу мінімальну кількість разів).

Деякі впорядкування, як $ADCB$, можна легко вирішити: вагони відчіпляються між $A$ та $D$, а після оберту $DCB$ досягнуто правильного порядку.

Однак Простачок Саймон (машиніст) не надто відомий своєю кмітливістю, тому завжди розв’язує цю проблему, спочатку ставлячи вагон $A$ на правильне місце, потім вагон $B$, і так далі.

Використовуючи чотири вагони, найгіршими можливими впорядкуваннями для Саймона (які назвемо впорядкуваннями максімікс) будуть $DACB$ та $DBAC$, кожне з яких вимагає п’ять обертів (хоча, якщо використати кращий підхід, знадобиться лише три оберти). Нижче наведено те, як він вирішуватиме $DACB$.

<img class="img-responsive center-block" alt="п’ять обертів для впорядкування максімікс DACB" src="https://cdn.freecodecamp.org/curriculum/project-euler/maximix-arrangements.gif" style="background-color: white; padding: 10px;" />

Можна довести, що існує 24 впорядкування максімікс для шести вагонів, для яких десятим лексикографічним впорядкуванням максімікс є $DFAECB$.

Знайдіть ${2011}^{\text{-те}}$ лексикографічне впорядкування максімікс для одинадцяти вагонів.

# --hints--

`maximixArrangements()` має повернути рядок.

```js
assert(typeof maximixArrangements() === 'string');
```

`maximixArrangements()` має повернути рядок `CAGBIHEFJDK`.

```js
assert.strictEqual(maximixArrangements(), 'CAGBIHEFJDK');
```

# --seed--

## --seed-contents--

```js
function maximixArrangements() {

  return true;
}

maximixArrangements();
```

# --solutions--

```js
// solution required
```
